import Request from '../common/js/request'

// 角色接口
class RoleService {
  /**
   * 根据关键字查询角色是否存在
   * @param keyword 角色名称、角色值
   * @param roleId 角色Id
   */
  static getIsExistsByKeyword(keyword, roleId) {
    const url = '/api-upms/role/getIsExistsByKeyword'

    const data = {
      keyword,
      roleId
    }

    return Request.get(url, data)
  }

  /**
   * 根据关键字查询角色集合
   * @param keyword 角色名称、角色值
   * @param pageNum 当前页数
   * @param pageSize 每页条数
   */
  static getRolesByKeyword(keyword, pageNum, pageSize) {
    const url = '/api-upms/role/getRolesByKeyword'

    const data = {
      keyword,
      pageNum,
      pageSize
    }

    return Request.get(url, data)
  }

  /**
   * 查询全部角色信息
   */
  static getRoles() {
    const url = '/api-upms/role/getRoles'

    return Request.get(url)
  }

  /**
   * 添加角色
   * @param role 角色表单对象
   */
  static insertRole(role) {
    const url = '/api-upms/role/insertRole'

    const data = role

    return Request.post(url, data)
  }

  /**
   * 更新角色
   * @param role 角色表单对象
   */
  static updateRole(role) {
    const url = '/api-upms/role/updateRole'

    const data = role

    return Request.post(url, data)
  }

  /**
   * 删除角色
   * @param roleIds 角色Id数组
   */
  static deleteRoles(roleIds) {
    const url = '/api-upms/role/deleteRoles'

    const data = {
      roleIds: roleIds.toString()
    }

    return Request.post(url, data)
  }

  /**
   * 添加角色权限
   * @param roleId 角色Id
   * @param permissionIds 权限Id数组
   */
  static insertRolePermission(roleId, permissionIds) {
    const url = '/api-upms/role/insertRolePermission'

    const data = {
      roleId,
      permissionIds: permissionIds.toString()
    }

    return Request.post(url, data)
  }
}

export default RoleService
